#ifndef MULTYPE_H
#define MULTYPE_H

#include <string>
#include <iostream>
#include <typeinfo>
#include <iomanip>
#include <string.h>

using namespace std;


// Classe mère qui contient tous les types possibles pour les variables
class Multype {
public:
	virtual ~Multype() {}
};

class TypeInt : public Multype {
private:
	int valeur;
public:
	TypeInt(int val = 0) {
		valeur = val;
	}
	int getValeur() {
		return valeur;
	}
	~TypeInt() {}
};

class TypeFloat : public Multype {
private:
	float valeur;
public:
	TypeFloat(float val = 0.0) {
		valeur = val;
	}
	float getValeur() {
		return valeur;
	}
	~TypeFloat() {}
};

class TypeString : public Multype {
private:
	string valeur;
public:
	TypeString(string val = "") {
		valeur = val;
	}
	string getValeur() {
		return valeur;
	}
	~TypeString() {}
};

#endif
